import axios from 'axios'; // 引入axios
import { Message } from 'element-ui';
import router from '../router/index';

const axios2 = axios.create({
  baseURL: 'http://127.0.0.1:8888/api/private/v1/', // 请求的根路径
});
// 添加请求拦截器
axios2.interceptors.request.use((config) => {
  // 在发送请求之前做些什么
  // 如果请求的地址不是 登录接口 那么在请求头加上 token
  if (config.path !== 'login') {
    config.headers.Authorization = window.sessionStorage.getItem('token');
  }
  return config;
},
// 对请求错误做些什么
(error) => Promise.reject(error));
// 添加响应拦截器
axios2.interceptors.response.use((response) => response.data,
  // 对响应数据做点什么
  (error) => {
    if (error.response && error.response.status === 401) {
      Message({ type: 'info', message: '登录失效,请重新登录' });
      setTimeout(() => {
        router.push('/login');
      }, 1000);
    }
  });
export default ({
  url, method = 'get', params = {}, data = {}, headers = {}, transformRequest,
}) => axios2({
  url,
  method,
  params,
  data,
  headers,
  transformRequest,
});
